﻿#ifndef UNORDERED_SET_HPP
#define UNORDERED_SET_HPP

#include "hashbucket.hpp"
namespace SFW
{
    template<class K>
    class unordered_set
    {
        struct SetExtractKey
        {
            const K& operator()(const K& key)
            {
                return key;
            }
        };
    public:
        using Iterator = typename HashBucket<K, K, SetExtractKey>::Iterator;
    private:
        HashBucket<K, K, SetExtractKey> m_set;
    public:
        bool insert(const K& key)
        {
            return m_set.insert(key);
        }
    };
}

#endif // UNORDERED_SET_HPP
